home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Glitch Apple Disk Collection
/
2014.glitch.apple.collection.zip
/
indexed
/
CRACK83.DSK
/
FILE #11.txt
< prev
next >
Wrap
Text File
|
2014-09-09
|
6KB
|
119 lines
MSG LEFT BY: TRYSTAN II
THIS AND THE FOLLOWING MESSAGE ARE BOTH FORMATTED FOR 80 COLUMNS. BE
SURE TO USE THE VIDEO COMMAND TO CHANGE YOUR SCREEN WIDTH!
THRESHOLD IS THE FIRST GAME PROGRAM WHICH USES DISK ACCESS DURING PLAY THAT
I HAVE BEEN ABLE TO CRACK. I HOPE THE TECHNIQUE DESCRIBED BELOW WILL
ENABLE SOME OF THE OTHER DISK-BASED GAMES TO UNFOLD THEIR MANIFEST CHARMS
TO THE WORLD OF DOS 3.3!
FIRST, THE SIMPLE PART--THAT OF GETTING THE MAIN CODE INTO A NORMAL DOS 3.3
BINARY FILE:
1) BOOT THRESHOLD NORMALLY. WHEN YOU GET TO THE POINT WHERE IT
ASKS YOU WHETHER YOU WANT TO USE PADDLES OR KEYBOARD, PRESS RESET. THIS IS
WHERE THE GAME WILL START ONCE IT'S BROKEN. THE LOGO IS NICE, BUT USELESS
AND, SINCE THRESHOLD USES RAM FROM $800 TO $B600, YOU DON'T HAVE ROOM TO
LOAD IT WITH NORMAL DOS.
2) YOU NOW HAVE TO SAVE EVERYTHING IN MEMORY FROM 0 TO $98FF,
EXCEPT FOR HI-RES PAGE 1 ($2000-$3FFF). SAVING PAGES 0-7 IS THE HARDEST,
SINCE RESET LIKES TO WALK ALL OVER VARIOUS PARTS OF IT. BECAUSE OF THIS,
YOU NEED TO USE SOMETHING TO RELOCATE THE FIRST 8 PAGES OF MEMORY UP TO A
LOCATION LIKE $1000 OR SO, WHICH WILL ENABLE YOU TO RE-BOOT NORMAL DOS
WITHOUT WIPING IT OUT. I USED MASTER KEY+ TO SAVE ALL THE PARTS, INCLUDING
PAGE 0-7. FROM WHAT I GATHER, ONE OF THE TWO CRACKING ROMS IN THE DOWNLOAD
SECTION WILL ALSO RELOCATE PAGES 0-7 UPON HITTING RESET.
3) ONCE YOU HAVE SAVE PAGES 0-7, YOU NEED TO RE-BOOT THRESHOLD
IN ORDER TO SAVE PAGES 8 THRU $97 ($800-$97FF). THIS IS A BIT EASIER, BUT
YOU HAVE TO REMEMBER TO MOVE PAGE 8 OUT OF THE WAY BEFORE YOU RE-BOOT
NORMAL DOS BECAUSE IT GETS CLOBBERED. YOU SHOULD DO THIS IN TWO STAGES IN
ORDER TO MAKE THE RELOCATION PROCESS (DESCRIBED BELOW) EASIER. I FIRST
SAVED $800-$1FFF, THEN RE-BOOTED THRESHOLD, AND MOVED $4000-$97FF DOWN TO
$2000 BEFORE SAVING IT.
4) NOW ALL YOU DO IS BLOAD THE THREE PIECES LIKE SO:
A) BLOAD THE $800-$1FFF FILE AT $800
B) BLOAD THE PAGE 0-7 FILE AT $2000
C) BLOAD THE $4000-$97FF FILE AT $2800
THE PROGRAM NOW RESIDES IN MEMORY FROM $800-$80FF. THE ONLY THING LEFT IS
TO WRITE A LITTLE ASSEMBLY LANGUAGE ROUTINE TO RELOCATE PAGES 0-7 AND
$2800-$80FF TO THEIR PROPER ADDRESSES. HINT: USE THE MOVE ROUTINES IN THE
MONITOR! I PUT MY CODE RELOCATOR AT $8100 AND ADDED A JUMP TO IT AT $7FD.
FINALLY, ADD A JUMP TO THE STARTING ADDRESS OF $6B00 AT THE END OF YOUR
RELOCATION ROUTINE. THEN, A BSAVE THRESHOLD,A$7FD,L$7A03 WILL SAVE IT ALL
IN ONE EXECUTABLE CHUNK. BY USING A LENGTH OF $7A03, YOU GIVE YOURSELF 255
BYTES IN WHICH TO WRITE YOUR RELOCATION CODE.
THE TECHNIQUE OF PULLING THE PIECES OF THE DISK ACCESSED DURING PLAY
FOLLOWS IN THE NEXT MESSAGE.
THE MOST DIFFICULT PART OF CRACKING THRESHOLD IS SAVING THE VARIOUS BITS
AND PIECES OF THE DISK THAT IT ACCESSES DURING PLAY.
THE CODE STARTING AT $9383 SETS UP THE IOB AND CALLS THE RWTS TO LOAD IN 3
SEPARATE "FILES" EACH TIME YOU ADVANCE TO A NEW LEVEL. FORTUNATELY, THE
RWTS IN THRESHOLD IS NOT TOO HEAVILY MODIFIED, SO YOU CAN USE THE INSPECTOR
TO READ THE THRESHOLD DISK. BEFORE YOU START READING THE THRESHOLD DISK,
YOU WILL HAVE TO CHANGE LOCATION $3D9 TO JUMP TO THE RWTS AT $B7B5 (I.E.
3D9:4C B5 B7) AND THEN CHANGE THE RESET VECTOR TO JUMP TO SOME INNOCUOUS
LOCATION SO THAT YOU CAN RESET OUT OF THE INSPECTOR.
STARTING AT $9383, YOU WILL FIND 3 CALLS TO $7AB0 (WHICH, IN TURN, CALLS
THE RWTS). JUST BEFORE EACH OF THESE CALLS, THE IOB IS SET UP WITH THE
STARTING TRACK/SECTOR, THE LOAD ADDRESS AND THE NUMBER OF SECTORS TO READ.
THE TRACK/SECTOR TABLE IS AT $65D0-$65F3. HERE IS WHAT IT LOOKS LIKE:
65D0:03 05 07 09 0C 0E 00 04
65D8:08 0C 03 07 12 12 13 13
65E0:14 15 00 08 03 0B 06 01
65E8:16 16 16 16 16 16 00 02
65F0:04 06 08 0A
THE FIRST 6 BYTES ARE THE TRACK NUMBERS FOR THE FIRST "FILE" FOR EACH OF
THE SIX LEVELS. THE NEXT SIX BYTES ARE THE CORRESPONDING SECTOR NUMBERS
FOR THE FIRST "FILE". THE NEXT SET OF TWELVE BYTES ARE FOR THE SECOND
"FILE" AND THE THIRD SET IS FOR THE LAST OF THE THREE "FILES". FOR
EXAMPLE, WHEN YOU START THRESHOLD, YOU ARE AT LEVEL ONE. THE 3 FILES START
AT T3-S0, T12-S0 AND T16-S0, RESPECTIVELY. AT LEVEL TWO, THE 3 FILES START
AT T5-S4, T12-S8 AND T16-S2. THE VALUES ABOVE ARE NOT WHAT YOU WILL SEE ON
YOUR THRESHOLD DISK. THEY ARE THE LOCATIONS I USED TO SAVE THE FILES ONTO
NORMAL DOS. THE INTERPRETATION OF THE TABLE IS THE SAME, HOWEVER.
THE NUMBER OF SECTORS TO READ FOR EACH OF THE THREE "FILES" ARE AT
LOCATIONS $93A1, $93C7 AND $93ED RESPECTIVELY. THE TOTAL IS 240 SECTORS!
USE THE INSPECTOR TO READ IN EACH OF THE 18 (6 LEVELS * 3 FILES) "FILES",
ONE AT A TIME, AND THEN RE-BOOT NORMAL DOS AND WRITE THEM BACK OUT. YOU
WILL HAVE TO USE A SECTOR EDITOR TO MODIFY THE VTOC OF YOUR TARGET DISK
BECAUSE THEY WILL NOT EXIST AS NORMAL DOS FILES. IN ORDER TO PREVENT THEM
FROM ACCIDENTAL ERASURE, YOU SHOULD FLAG THOSE SECTORS IN THE VTOC AS BEING
IN USE. I FOUND DISK FIXER TO BE THE EASIEST FOR THIS PURPOSE. YOU COULD,
OF COURSE, MAKE THESE NORMAL DOS FILES, BUT THEN YOU WOULD HAVE TO MODIFY
THE MAIN CODE TO READ FILES INSTEAD OF A SERIES OF SECTORS. CHALK IT UP TO
LAZINESS ON MY PART COUPLED WITH THE FACT THAT THE PROGRAM RUNS FASTER IF
IT DOESN'T HAVE TO GO THRU THE DOS FILE MANAGER!
HOPE THIS HELPS.
=== TRYSTAN II ===